package com.whfc.emp.dao;

import com.whfc.emp.dto.AppTrainDTO;import com.whfc.emp.dto.AppTrainEmpDTO;import com.whfc.emp.entity.AppTrain;import com.whfc.emp.param.AppTrainListParam;import org.apache.ibatis.annotations.Param;import java.util.List;

/**
 * @author: hw
 * @date: 2021-10-22 15:24
 * @description: //todo
 */
public interface AppTrainMapper {
    int deleteByPrimaryKey(Integer id);

    int insert(AppTrain record);

    int insertSelective(AppTrain record);

    AppTrain selectByPrimaryKey(Integer id);

    int updateByPrimaryKeySelective(AppTrain record);

    int updateByPrimaryKey(AppTrain record);

    /**
     * 获取培训列表
     *
     * @param request
     * @return
     */
    List<AppTrainDTO> selectByParam(AppTrainListParam request);

    /**
     * 删除培训记录
     *
     * @param trainId
     */
    void deleteLogicById(@Param("trianId") Integer trainId);

    /**
     * 完成培训
     *
     * @param trainId
     */
    void updateState(@Param("trainId") Integer trainId);

    /**
     * 查询组织机构id
     *
     * @param trainId
     * @return
     */
    Integer selectDeptIdByTrainId(@Param("trainId") Integer trainId);

    /**
     * 查询人员培训列表
     *
     * @param empId
     * @return
     */
    List<AppTrainEmpDTO> selectByEmpId(Integer empId);

    /**
     * 根据培训guid查找数据
     *
     * @param guid
     * @return
     */
    AppTrain selectByGuid(String guid);
}